home *** CD-ROM | disk | FTP | other *** search
/ MacFormat 1995 December / macformat-031.iso / mac / Shareware City / Developers / enter-act-34 / EnterAct Stuff / EnterAct in brief < prev    next >
Encoding:
Text File  |  1995-09-09  |  13.1 KB  |  302 lines  |  [TEXT/KEEN]

  1. *********EnterAct in brief (THIS IS NOT THE MANUAL) *************
  2.  
  3. EnterAct is a full C/C++ project-oriented editor, with
  4. additional code definition display capabilities. And then some.
  5.  
  6.  Most of EnterAct's best features work with first-draft,
  7.  uncompilabe code. As long as the delimiters balance and
  8.  the key words are not too badly misspelled, EnterAct will
  9.  provide instant definition and prototype display, a class
  10.  browser, jumping to definitions, cross-referencing etc.
  11.  
  12.  
  13. Necessary things
  14. ---------------
  15.  
  16.     Installation
  17. Put EnterAct 3 and the "Drag_on Modules" folder next to the
  18. folder that holds the mac toolbox headers you wish to use.
  19. Symantec: next to the THINK Project Manager
  20. metrowerks: next to the compiler you're using
  21. MPW: next to the "Interfaces" folder.
  22.  
  23.     Making a new project
  24. Select "New Project" (this same dialog appears when you start up
  25. EnterAct and cancel the "Open Project"dialog).
  26. Give your project a name, and save it.
  27. Add files with the "Add Files..." or "Add All in Folder..." commands -
  28. hold down the <Shift> key and the latter becomes "Add All in
  29. Subfolders...". With the "Add All" commands, use the button at the
  30. bottom of the dialog to add whole folders at once.
  31. To add all toolbox headers, pick "Add Mac Headers".
  32. Add as many or as few files as you want, regardless of whether
  33. they make up a complete project. Neglect not non-source files
  34. (spec, design etc) which end up in the rightmost project window
  35. pane. Source files are in the left pane, headers in the middle. To
  36. force files with nonstandard extensions into particular panes, use
  37. "File Extensions....".
  38.  
  39. NOTE if a folder's name is in parentheses, the files in it will not
  40. be added to your project. To exclude a folder such as "Old Source",
  41. change its name to "(Old Source)".
  42.  
  43. If you add more than one file with the same name, truncated full
  44. path names will appear to the right of the file name, to help you
  45. tell which file is which.
  46.  
  47. The project window responds to many keys in standard ways.
  48. Go left and right across the three panes with the left and right
  49. arrow keys, <Command><down arrow> to go to the bottom of a
  50. pane etc. To type your way to a particular file, you can type
  51. the first part of the name or any distinctive part of the name
  52. (useful if you have a lot of files whose names all begin with the
  53. same prefix, eg to advance to "PROJECT7_Mouse.c" you could
  54. probably type just "mou").
  55.  
  56. You can open a file from your project window by double-clicking
  57. on it, or hitting <Return>, or use "Go to..." with the name selected.
  58. In all cases, the project window itself will go all the way to the back.
  59.  
  60. Please add this file to your project for handy reference (use "Add
  61. Front File"), and add the "EnterAct 3 Manual" as well - eventually,
  62. you'll want to browse through it.
  63.  
  64.     Building a project dictionary
  65. Select "Update Dictionary". If you run into a problem, see
  66. «EnterAct 3 Manual» 108.
  67. (click in the line above and select "Go to..." from the Search menu -
  68. if you've added the manual to your project, this will open the
  69. manual and take you to line 108.)
  70. Note with v3.0.5 EnterAct's parser is smarter about handling
  71. preprocessor tangles, and problems are very rare.
  72.  
  73. To exlude a file from being built into your dictionary, hold down
  74. the <Command> key and click on its name in the project window.
  75. A dash '-' will appear to the left of its name, meaning your
  76. dictionary will be "minus" that file.
  77.  
  78. Now and then (typically when lookup doesn't give expected
  79. results) issue an "Update Dictionary" to keep your
  80. dictionary current. Once a day, once a week, whatever feels right.
  81.  
  82.     Looking up definitions
  83. For any sort of lookup to work, you must have a project with
  84. built dictionary open.
  85.  
  86. Select "AutoLook": when you double-click on or click after a C
  87. name in any window, the AutoLook window will display its
  88. definition. This includes all names for structs, unions, enums,
  89. enum constants, functions, methods, classes, file or global scope
  90. variables, defines, provided only that they are defined outside of
  91. function and struct bodies (plus slightly more - see the manual).
  92.  
  93. As of version 3, the AutoLook window can also display definitions
  94. of local variables. For this to work, the file in question must be
  95. a source file (ie its name must end in .c or cp etc).
  96. Double-clicking on or clicking after a local variable name will
  97. then produce a definition in the AutoLook window.
  98.  
  99. And as of v3.3, AutoLook also produces fast accurate results for data
  100. members when you're working in a method, provided the data member
  101. is in the current method's inheritance chain (the class that owns
  102. the method you're working in, plus all base classes from which
  103. it is derived, and their bases etc). The name being looked up must
  104. match the beginning of a data member's name exactly. In the display
  105. box for the AutoLook window you'll see "member of" followed by
  106. the name of the class from which the declaration was taken.
  107.  
  108. Please note that lookup for data members that aren't in the
  109. current methods' inheritance chain is slower and less accurate.
  110.  
  111. For a more permanent separate display of the definition, press the
  112. <Enter> key. A separate lookup window will appear. Hold down the
  113. <Option> key and drag in the lookup window's title bar to select the
  114. exact definition you want from a popup menu. Note that local
  115. variables are at present excluded, you'll have to Copy and Paste
  116. from the AutoLook window if you want a separate view of them.
  117.  
  118. To look up the struct or class containing a particular member,
  119. again double-click on or click to the right of the name and press
  120. <Shift><Enter>. A lookup window will appear, holding struct or
  121. class definitions that contain the member. There will often be
  122. several, so use the lookup window's popup menu as described just
  123. above to pick the one you want. The AutoLook window
  124. will often display the definition you want, though there may
  125. be a delay of a second or so.
  126.  
  127. To use EnterAct as a lookup aid while working mainly with
  128. some other editor: have a relevant EnterAct project open,
  129. dictionary built, AutoLook open and frontmost; in the other
  130. editor, Copy the term you want looked up, and switch to
  131. EnterAct. If the definition does not immediately appear in
  132. the AutoLook window, press <Commmand><Enter>. If it was
  133. a member name and you want the definition of the containing
  134. struct or class, press <Shift><Command><Enter>.
  135.  
  136. All lookup windows including AutoLook are fully editable but
  137. cannot be saved.
  138.  
  139.     Browsing
  140. Select "Browse" from the EnterAct menu. Browse as in THINK C.
  141. Click and <Shift>click on and off of class names to show/hide
  142. multiple inheritance lines. (As mentioned, class browsing works
  143. with first-draft code.)
  144.  
  145. If a class "uses" or "has" member classes, these will be listed
  146. below the main class name, separated from it by a white line.
  147. You can also double-click on these names to jump to their
  148. definitions, or click-and-hold to select one of their method
  149. names from a popup.
  150.  
  151. The multiple inheritance lines often aren't enough, so if you
  152. <Option> or <Command> click on a class name you'll see a popup
  153. listing all of the classes from which it is derived. If you let
  154. go the mouse while over one of these base class names you'll
  155. jump to its definition.
  156.  
  157.     Finding Definitions
  158. Single words: <Option>double-click.
  159.  
  160. Full method names (eg "TCircle::Draw") : select the full name
  161. and use "Find Definition". Or, <Option>double-click on one word,
  162. drag to the other, and release.
  163.  
  164. Just the method name (eg "Draw") : normally the AutoLook
  165. window will show a full list of methods with the given
  166. name, and you can jump to the one you want with <Option>
  167. double-click or "Find Definition" as described just above.
  168. If the AutoLook window doesn't show the one you want,
  169. press <Enter>; a lookup window appears holding full
  170. prototypes for all methods with that name; use the lookup
  171. window's popup menu to pick the one you want; then jump
  172. to it as described above for full method names.
  173.  
  174. More than one definition for a term: 
  175. press <Enter> to look the name up; use the popup menu in the
  176. lookup window to pick the definition you want (<Option> click
  177. in the window's title bar); and then use <Option>double-click on
  178. the name, or "Find Definition" without changing the default
  179. selection. The popup menu includes truncated full path names
  180. for the defining files, so you can tell which definition is which.
  181.  
  182. Static functions and variables: if you're in the file where it is
  183. defined, just <Option>double-click on the name. If you have
  184. several definitions of such a name and you aren't in the file where
  185. it is defined, use the approach for more than one definition described
  186. just above.
  187.  
  188.     Multi-file search
  189. The Find dialog contains buttons to select all files of a particular
  190. type in the project window. Files selected for multi-file
  191. operations (including searching) have bullets (•) to their left in
  192. the project window. To "fine tune" your multi-file selection, hold
  193. down the <Option> key and click or drag right in the project
  194. window.
  195.  
  196. The "Batch" check box generates a list of all lines where the search
  197. string can be found in your multi-file selection. To jump to the
  198. file and line indicated for one of the finds, click on the line and
  199. use "Go to...".
  200.  
  201. Multi-file selections have other uses, such as "Remove •'d files",
  202. input for several "Index" commands, and input for hAWK programs
  203. (see the «hAWK User’s Manual» for the last).
  204.  
  205. In the Find dialog, the "Skip '-'" checkbox allows you to exclude
  206. files marked with a dash '-' in the project window when doing
  207. a multi-file operation such as searching. 
  208.  
  209.     Accessing THINK Reference
  210. Beside EnterAct at the same level, have a folder entitled "Tools"
  211. or "(Tools)"; drop an alias of THINK Reference in this folder.
  212.  
  213. To look up THINK Ref's thoughts on a term, select it or click
  214. to the right of it and issue "Find in THINK Reference".
  215.  
  216.     Accessing Toolbox Assistant
  217. As for THINK Ref, but drop an alias of "QuickView" in your
  218. Tools folder. The "Find in Toolbox Assistant" command is
  219. at the bottom of the Search menu.
  220.  
  221.     Editing and Undo
  222. All basic editing commands are undoable, with a single level
  223. of undo.
  224.  
  225. As you work, EnterAct logs all of your activities (including
  226. contents of edits) to the "EnterAct Recent Activities" file. In a
  227. pinch, you can recover the contents of a delete or remind yourself
  228. of what you just did by selecting "Show Activities..." from
  229. the Edit menu.
  230.  
  231. Well, not all of your activities, only the last ten thousand.
  232.  
  233. See «EnterAct 3 Manual» 4479 for a new and nicer way to cut
  234. and paste blocks of code.
  235.  
  236.     Working with Code Warrior
  237. By default, when you open a document and Code Warrior also
  238. has the document open, EnterAct will force Code Warrior to
  239. close and save the file before opening it, asking you first of
  240. course before doing so. To turn this off,
  241. deselect the "Safe switching under MultiFinder" option
  242. in the Options... dialog (under the Edit menu). Having this
  243. option on also means that EnterAct will save all your
  244. documents when you switch out, and refresh them from
  245. disk when you switch back if they have been changed by
  246. some other application.
  247.  
  248. Other useful things
  249. -----------------
  250. You can Balance a delimiter by double-clicking on it.
  251.  
  252. EnterAct comes equipped with hAWK, a version of AWK. It really
  253. is "three clicks and Run", with many supplied programs. See the
  254. «hAWK User’s Manual» for details.
  255.  
  256. EnterAct's <Enter>-driven lookup tolerates many kinds of spelling
  257. and (more importantly) memory errors. When in doubt, give it your
  258. best guess and press <Enter>. For extreme cases, use the "Options"
  259. dialog to increase the "Number of entries per lookup window" to 20.
  260. For emergency use only, use <Option><Enter> instead of plain <Enter>
  261. to fire up EnterAct's most error tolerant definition retriever - be
  262. prepared for some wild guesses mixed in there with the good ones!
  263.  
  264. To look up the last word on the clipboard, typically copied while in
  265. another application, press <Command><Enter>. Note if you have
  266. the AutoLook window open it will automatically show a definition
  267. for a word on the clipboard as you switch back to EnterAct.
  268.  
  269. "Go to..." is very nearly as general as it can be. It accepts line
  270. numbers, file names, marker names, and combinations such as
  271. file name/marker name, file name/line number. Handy for placing
  272. references in code files to supporting documentation. Moderately
  273. error tolerant, full correct spelling not required. To see it work,
  274. add the "EnterAct 3 Manual" to your project if you haven't done so,
  275. then click anywhere on the following line and "Go to":
  276. «EnterAct 3 Man» «17   “Go” cmds»
  277.  
  278. The European-style quotes «» are helpful in most "Go to" link names;
  279. to generate these painlessly, see
  280. «EnterAct 3 Man»  5890 (any individual mark)
  281. and
  282. «EnterAct 3 Man» 7392(marks in documentation files especially)
  283.  
  284. EnterAct projects accept PICT files.
  285.  
  286. Printing doesn't clip off long lines, it wraps them around.
  287.  
  288. EnterAct can be used as the THINK Project Managers's editor,
  289. as explained in either the THINK or EnterAct manuals.
  290.  
  291. When EnterAct can't locate a project file, and you have enabled
  292. the "Relocate files automatically" option,  it starts searching
  293. at the top of the disk where the file was last seen and
  294. searches down until it finds it (or not). Renaming or moving
  295. a folder does not affect EnterAct's memory of where a file is.
  296.  
  297. That's more than enough to get going. If you become inordinately
  298. fond of EnterAct's definition lookup capabilities, be sure to read
  299. through the full manual for details on the above features and a
  300. host of others.
  301.  
  302.